#lang racket


(require "ast/main.rkt"
         "backends/main.rkt"
         "base/main.rkt"
         "config/main.rkt"
         "constructors/main.rkt"
         "geometry/main.rkt"
         (prefix-in ogl: "opengl/main.rkt")
         "parametrization/main.rkt"
         (prefix-in tz: "tikz/main.rkt"))

(require "backend.rkt"
         ;"session.rkt"
         "sliders.rkt")

(require "evaluate.rkt")

(provide (all-from-out "ast/main.rkt"
                       "backends/main.rkt"
                       "base/main.rkt"
                       "config/main.rkt"
                       "constructors/main.rkt"
                       "geometry/main.rkt"
                       "opengl/main.rkt"
                       "parametrization/main.rkt"))

(provide (all-from-out "backend.rkt"
                       ;"session.rkt"
                       "sliders.rkt"))

(provide opengl
         tikz)


(define opengl ogl:opengl-backend%)
(define tikz tz:tikz-backend%)


(random-seed 1)
(load-user-config)

(void (load-null-backend))
(bind-rosetta-print)